.vega-main {
  display: flex;
  flex: 1 1 100%;
  position: relative;
  // align-self: flex-start;

  > .vega-messages {
    position: absolute;
    top: 0;
    width: 100%;
    margin: auto;
    opacity: 0.8;
    z-index: 1;
    list-style: none;

    li {
      margin: 0.5em;
    }

    .vega-message-warn pre {
      background: #ffff83;
    }

    .vega-message-err pre {
      background: #ffdddd;
    }

    pre {
      white-space: pre-wrap;
      padding: 0.7em;
    }
  }

  .vega-view-container {
    z-index: 0;
    flex: 1 1 100%;

    display: block;
    max-width: 100%;
    max-height: 100%;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  .vega-controls-container {
    display: flex;
    font-size: 14px;
    line-height: 20px;

    > .vega-bind {
      flex: 1; /*grow*/

      .vega-bind-name {
        display: inline-block;
        width: 105px;
      }

      input[type="range"] {
        width: 120px;
        color: rgb(157, 150, 142);
        display: inline-block;
        vertical-align: middle;
      }

      label {
        margin: 0 0 0 0.6em;
      }

      select {
        max-width: 200px;
      }

      .vega-bind-radio label {
        margin: 0 0.6em 0 0.3em;
      }
    }
  }
}
